home *** CD-ROM | disk | FTP | other *** search
- package com.ibm.xml.framework;
-
- import org.xml.sax.Locator;
-
- public abstract class XMLReader implements Locator {
- public static final int CHARDATA_RESULT_MARKUP = 1;
- public static final int CHARDATA_RESULT_REFERENCE = 2;
- public static final int CHARDATA_RESULT_CDEND = 3;
- public static final int CHARDATA_RESULT_INVALID_CHAR = 4;
- public static final int CHARDATA_RESULT_STATE_MASK = 7;
- public static final int CHARDATA_RESULT_CHARDATA = 8;
- public static final int CHARDATA_RESULT_ALL_SPACE = 16;
- protected ParserState fParserState;
- protected String fPublicId;
- protected String fSystemId;
- protected int fCarriageReturnCounter = 1;
- protected int fLinefeedCounter = 1;
- protected int fCharacterCounter = 1;
- protected int fCurrentOffset;
- protected static final byte[] fgAsciiXDigitChar = new byte[]{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
- protected static final byte[] fgAsciiAlphaChar = new byte[]{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0};
- protected static final byte[] fgAsciiInitialNameChar = new byte[]{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0};
- protected static final byte[] fgAsciiNameChar = new byte[]{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0};
- protected static final byte[] fgAsciiCharData = new byte[]{4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
- protected static final byte[] fgAsciiWSCharData = new byte[]{4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 4, 4, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
- protected static final byte E_VersionNumFlag = 1;
- protected static final byte E_EncNameFlag = 2;
- protected static final byte E_PubidCharFlag = 4;
- protected static final byte E_CharDataFlag = 8;
- protected static final byte E_InitialNameCharFlag = 16;
- protected static final byte E_NameCharFlag = 32;
- protected static byte[] fgCharFlags = null;
- private static final char[] fgVersionNumRanges = new char[]{'-', '.', '0', ':', 'A', 'F', 'a', 'f', '\u0000', '_', '\u0000'};
- private static final char[] fgEncNameRanges = new char[]{'-', '.', '0', '9', 'A', 'Z', 'a', 'z', '\u0000', '_', '\u0000'};
- private static final char[] fgPubidCharRanges = new char[]{' ', '!', '#', '%', '\'', ';', '?', 'Z', 'a', 'z', '\u0000', '=', '_', '\u0000'};
- private static final char[] fgCharDataRanges = new char[]{' ', '%', '\'', ';', '=', '\\', '^', '\ud7ff', '\ue000', 'ÔøΩ', '\u0000', '\t', '\u0000'};
- private static final char[] fgInitialNameCharRanges = new char[]{'A', 'Z', 'a', 'z', '√Ä', '√ñ', '√ò', '√∂', '√∏', 'ƒ±', 'ƒ¥', 'ƒæ', '≈Å', '≈à', '≈ä', '≈æ', 'ΔÄ', '«É', '«ç', '«∞', '«¥', '«µ', '«∫', '»ó', '…ê', ' ®', ' ª', 'ÀÅ', 'Œà', 'Œä', 'Œé', 'Œ°', 'Œ£', 'œé', 'œê', 'œñ', 'œ¢', 'œ≥', '–Å', '–å', '–é', '—è', '—ë', '—ú', '—û', '“Å', '“ê', '”Ñ', '”á', '”à', '”ã', '”å', '”ê', '”´', '”Æ', '”µ', '”∏', '”π', '‘±', '’ñ', '’°', '÷Ü', '◊ê', '◊™', '◊∞', '◊≤', 'ÿ°', 'ÿ∫', 'ŸÅ', 'Ÿä', 'Ÿ±', '⁄∑', '⁄∫', '⁄æ', '€Ä', '€é', '€ê', '€ì', '€•', '€¶', '‡§Ö', '‡§π', '‡•ò', '‡•°', '‡¶Ö', '‡¶å', '‡¶è', '‡¶ê', '‡¶ì', '‡¶®', '‡¶™', '‡¶∞', '‡¶∂', '‡¶π', '‡ßú', '‡ßù', '‡ßü', '‡ß°', '‡ß∞', '‡ß±', '‡®Ö', '‡®ä', '‡®è', '‡®ê', '‡®ì', '‡®®', '‡®™', '‡®∞', '‡®≤', '‡®≥', '‡®µ', '‡®∂', '‡®∏', '‡®π', '‡©ô', '‡©ú', '‡©≤', '‡©¥', '‡™Ö', '‡™ã', '‡™è', '‡™ë', '‡™ì', '‡™®', '‡™™', '‡™∞', '‡™≤', '‡™≥', '‡™µ', '‡™π', '‡¨Ö', '‡¨å', '‡¨è', '‡¨ê', '‡¨ì', '‡¨®', '‡¨™', '‡¨∞', '‡¨≤', '‡¨≥', '‡¨∂', '‡¨π', '‡≠ú', '‡≠ù', '‡≠ü', '‡≠°', '‡ÆÖ', '‡Æä', '‡Æé', '‡Æê', '‡Æí', '‡Æï', '‡Æô', '‡Æö', '‡Æû', '‡Æü', '‡Æ£', '‡Æ§', '‡Æ®', '‡Æ™', '‡ÆÆ', '‡Æµ', '‡Æ∑', '‡Æπ', '‡∞Ö', '‡∞å', '‡∞é', '‡∞ê', '‡∞í', '‡∞®', '‡∞™', '‡∞≥', '‡∞µ', '‡∞π', '‡±†', '‡±°', '‡≤Ö', '‡≤å', '‡≤é', '‡≤ê', '‡≤í', '‡≤®', '‡≤™', '‡≤≥', '‡≤µ', '‡≤π', '‡≥†', '‡≥°', '‡¥Ö', '‡¥å', '‡¥é', '‡¥ê', '‡¥í', '‡¥®', '‡¥™', '‡¥π', '‡µ†', '‡µ°', '‡∏Å', '‡∏Æ', '‡∏≤', '‡∏≥', '‡πÄ', '‡πÖ', '‡∫Å', '‡∫Ç', '‡∫á', '‡∫à', '‡∫î', '‡∫ó', '‡∫ô', '‡∫ü', '‡∫°', '‡∫£', '‡∫™', '‡∫´', '‡∫≠', '‡∫Æ', '‡∫≤', '‡∫≥', '‡ªÄ', '‡ªÑ', '‡ΩÄ', '‡Ωá', '‡Ωâ', '‡Ω©', '·Ç†', '·ÉÖ', '·Éê', '·É∂', '·ÑÇ', '·ÑÉ', '·ÑÖ', '·Ñá', '·Ñã', '·Ñå', '·Ñé', '·Ñí', '·Öî', '·Öï', '·Öü', '·Ö°', '·Ö≠', '·ÖÆ', '·Ö≤', '·Ö≥', '·ÜÆ', '·ÜØ', '·Ü∑', '·Ü∏', '·Üº', '·áÇ', '·∏Ä', '·∫õ', '·∫†', '·ªπ', '·ºÄ', '·ºï', '·ºò', '·ºù', '·º†', '·ΩÖ', '·Ωà', '·Ωç', '·Ωê', '·Ωó', '·Ωü', '·ΩΩ', '·æÄ', '·æ¥', '·æ∂', '·æº', '·øÇ', '·øÑ', '·øÜ', '·øå', '·øê', '·øì', '·øñ', '·øõ', '·ø†', '·ø¨', '·ø≤', '·ø¥', '·ø∂', '·øº', '‚Ñ™', '‚Ñ´', '‚ÜÄ', '‚ÜÇ', '„ÅÅ', '„Çî', '„ǰ', '„É∫', '„ÑÖ', '„Ѩ', 'Í∞Ä', 'Ìû£', '„İ', '„Ä©', '‰∏Ä', 'Èæ•', '\u0000', ':', '_', 'ŒÜ', 'Œå', 'œö', 'œú', 'œû', 'œ†', '’ô', '€ï', '‡§Ω', '‡¶≤', '‡©û', '‡™ç', '‡™Ω', '‡´†', '‡¨Ω', '‡Æú', '‡≥û', '‡∏∞', '‡∫Ñ', '‡∫ä', '‡∫ç', '‡∫•', '‡∫ß', '‡∫∞', '‡∫Ω', '·ÑÄ', '·Ñâ', '·Ñº', '·Ñæ', '·ÖÄ', '·Öå', '·Öé', '·Öê', '·Öô', '·Ö£', '·Ö•', '·Öß', '·Ö©', '·Öµ', '·Üû', '·Ü®', '·Ü´', '·Ü∫', '·á´', '·á∞', '·áπ', '·Ωô', '·Ωõ', '·Ωù', '·ææ', '‚Ѷ', '‚ÑÆ', '„Äá', '\u0000'};
- private static final char[] fgNameCharRanges = new char[]{'-', '.', '̀', 'ͅ', '͠', '͡', '҃', '҆', '֑', '֡', '֣', 'ֹ', 'ֻ', 'ֽ', 'ׁ', 'ׂ', 'ً', 'ْ', 'ۖ', 'ۜ', '\u06dd', '۟', '۠', 'ۤ', 'ۧ', 'ۨ', '۪', 'ۭ', 'ँ', 'ः', 'ा', 'ौ', '॑', '॔', 'ॢ', 'ॣ', 'ঁ', 'ঃ', 'ী', 'ৄ', 'ে', 'ৈ', 'ো', '্', 'ৢ', 'ৣ', 'ੀ', 'ੂ', 'ੇ', 'ੈ', 'ੋ', '੍', 'ੰ', 'ੱ', 'ઁ', 'ઃ', 'ા', 'ૅ', 'ે', 'ૉ', 'ો', '્', 'ଁ', 'ଃ', 'ା', 'ୃ', 'େ', 'ୈ', 'ୋ', '୍', 'ୖ', 'ୗ', 'ஂ', 'ஃ', 'ா', 'ூ', 'ெ', 'ை', 'ொ', '்', 'ఁ', 'ః', 'ా', 'ౄ', 'ె', 'ై', 'ొ', '్', 'ౕ', 'ౖ', 'ಂ', 'ಃ', 'ಾ', 'ೄ', 'ೆ', 'ೈ', 'ೊ', '್', 'ೕ', 'ೖ', 'ം', 'ഃ', 'ാ', 'ൃ', 'െ', 'ൈ', 'ൊ', '്', 'ิ', 'ฺ', '็', '๎', 'ິ', 'ູ', 'ົ', 'ຼ', '່', 'ໍ', '༘', '༙', 'ཱ', '྄', '྆', 'ྋ', 'ྐ', 'ྕ', 'ྙ', 'ྭ', 'ྱ', 'ྷ', '⃐', '⃜', '〪', '〯', '0', '9', '٠', '٩', '۰', '۹', '०', '९', '০', '৯', '੦', '੯', '૦', '૯', '୦', '୯', '௧', '௯', '౦', '౯', '೦', '೯', '൦', '൯', '๐', '๙', '໐', '໙', '༠', '༩', '〱', '〵', 'ゝ', 'ゞ', 'ー', 'ヾ', '\u0000', 'ֿ', 'ׄ', 'ٰ', '़', '्', '়', 'া', 'ি', 'ৗ', 'ਂ', '਼', 'ਾ', 'ਿ', '઼', '଼', 'ௗ', 'ൗ', 'ั', 'ັ', '༵', '༷', '༹', '༾', '༿', 'ྗ', 'ྐྵ', '⃡', '゙', '゚', '·', 'ː', 'ˑ', '·', 'ـ', 'ๆ', 'ໆ', '々', '\u0000'};
-
- protected XMLReader(ParserState var1, String var2, String var3) {
- this.fParserState = var1;
- this.fPublicId = var2;
- this.fSystemId = var3;
- initCharFlags();
- }
-
- public String getPublicId() {
- return this.fPublicId;
- }
-
- public String getSystemId() {
- return this.fSystemId;
- }
-
- public int getLineNumber() {
- return this.fLinefeedCounter > 1 ? this.fLinefeedCounter : this.fCarriageReturnCounter;
- }
-
- public int getColumnNumber() {
- return this.fCharacterCounter;
- }
-
- public abstract int addString(int var1, int var2);
-
- public abstract int addSymbol(int var1, int var2);
-
- public abstract void append(ChunkyCharArray var1, int var2, int var3);
-
- public abstract int skipOneChar() throws Exception;
-
- public abstract int skipAsciiChar() throws Exception;
-
- public abstract int skipToChar(char var1) throws Exception;
-
- public abstract int skipPastChar(char var1) throws Exception;
-
- public abstract boolean skippedValidChar() throws Exception;
-
- public abstract boolean lookingAtValidChar() throws Exception;
-
- public abstract int skipInvalidChar(int var1) throws Exception;
-
- public abstract boolean skippedChar(char var1) throws Exception;
-
- public abstract boolean lookingAtChar(char var1) throws Exception;
-
- public abstract boolean skippedSpace() throws Exception;
-
- public abstract boolean lookingAtSpace() throws Exception;
-
- public abstract int skipPastSpaces() throws Exception;
-
- public abstract int skipDecimalDigit() throws Exception;
-
- public abstract int skipHexDigit() throws Exception;
-
- public abstract boolean skippedAlpha() throws Exception;
-
- public abstract boolean skippedVersionNum() throws Exception;
-
- public abstract boolean skippedEncName() throws Exception;
-
- public abstract boolean skippedPubidChar() throws Exception;
-
- public abstract boolean skippedString(char[] var1) throws Exception;
-
- public abstract int scanName(char var1, int var2) throws Exception;
-
- public abstract int skipPastName(char var1) throws Exception;
-
- public abstract int skipPastNmtoken(char var1) throws Exception;
-
- public abstract int scanContent(ScanContentState var1) throws Exception;
-
- public final int currentOffset() {
- return this.fCurrentOffset;
- }
-
- private static synchronized void initCharFlags() {
- if (fgCharFlags == null) {
- fgCharFlags = new byte[65536];
- setFlagForRange(fgVersionNumRanges, (byte)1);
- setFlagForRange(fgEncNameRanges, (byte)2);
- setFlagForRange(fgPubidCharRanges, (byte)4);
- setFlagForRange(fgCharDataRanges, (byte)8);
- setFlagForRange(fgInitialNameCharRanges, (byte)48);
- setFlagForRange(fgNameCharRanges, (byte)32);
- }
-
- }
-
- private static void setFlagForRange(char[] var0, byte var1) {
- int var2;
- int var3;
- byte[] var10000;
- int var10001;
- for(var2 = 0; (var3 = var0[var2]) != 0; var2 += 2) {
- for(char var4 = var0[var2 + 1]; var3 <= var4; var10000[var10001] |= var1) {
- var10000 = fgCharFlags;
- var10001 = var3++;
- }
- }
-
- ++var2;
-
- while((var3 = var0[var2]) != 0) {
- var10000 = fgCharFlags;
- var10000[var3] |= var1;
- ++var2;
- }
-
- }
- }
-